package org.grill_fish.fla.utils
{
    import flash.system.System;
    import flash.utils.ByteArray;
    public class StringConvert
    {
        public function StringConvert()
        {
        }
        public static function ANSI2UTF(ANSI_string:String):String {
            var temp:Boolean = !(!System.useCodePage);
            System.useCodePage = true;
            var code:String = "";
            for (var i:int = 0; i<ANSI_string.length; i++) {
                code += "%"+ANSI_string.charCodeAt(i).toString(16);
            }
            var result:String = unescape(code);
            System.useCodePage = temp;
            return result;
        }
        public static function EncodeUtf8(str : String):String {
            var oriByteArr:ByteArray = new ByteArray();
            oriByteArr.writeUTFBytes(str);
            var tempByteArr : ByteArray = new ByteArray();
            //trace(str);
            for (var i:int = 0; i < oriByteArr.length; i++) {
                if (oriByteArr[i] == 194) {
                    tempByteArr.writeByte(oriByteArr[i+1]);
                    i++;
                } else if (oriByteArr[i] == 195) {
                    tempByteArr.writeByte(oriByteArr[i+1] + 64);
                    i++;
                } else {
                    tempByteArr.writeByte(oriByteArr[i]);
                }
            }
            tempByteArr.position = 0;
            return tempByteArr.readMultiByte(tempByteArr.bytesAvailable,"chinese");
        }
    }
}